home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 10 / AACD 10.iso / AACD / Information / Guides / 3DWorld-FAQ next >
Text File  |  1999-09-02  |  24KB  |  740 lines

  1.                            3D World Mailing List FAQ
  2.  
  3.                          The 3D World Mailing List FAQ
  4.                              Last Updated: 26/6/99
  5.  
  6.               Maintained by Paul Qureshi <paul@mc68k.demon.co.uk>
  7.  
  8. Contributions from: Thomas Frieden
  9.                     Derick Smit
  10.  
  11. == 0. Introductory Information ============================================
  12.  
  13. >> Introduction >>
  14.  
  15. This is the 3D World Mailing List FAQ. It contains information and frequently
  16. asked questions from the 3DWorld list at the Haage & Partner web site
  17. (www.haage-partner.com). It is maintained by me, Paul Qureshi
  18. <paul@mc68k.demon.co.uk>.
  19.  
  20. This FAQ aims to provide a comprehensive reference for anyone using the
  21. 3DWorld ML. To this end, it has information on all topics commonly covered
  22. on the list. These are the aims of this FAQ:
  23.  
  24.     A. Provide answers to common questions asked on the list, to make
  25.        things easier for those interested and to lower the bandwidth
  26.        used on the mailing list.
  27.  
  28.     B. To serve are a useful reference to those interested in 3D graphics,
  29.        including Haage & Partner products.
  30.  
  31.  
  32. >> Availability >>
  33.  
  34. This FAQ is available directly from several places:
  35.  
  36. -- The 3DWorld Mailing List (monthly post)
  37. -- Authors website: www.mc68k.demon.co.uk/faq/3dworld-faq.txt
  38. -- Haage & Partner website: www.haage-partner.com
  39. -- Aminet: www.aminet.org
  40.  
  41. If you would like to mirror (keep a copy) of this FAQ on any other site,
  42. please email the author (me: paul@mc68k.demon.co.uk) so I can keep you
  43. updated.
  44.  
  45. If you find somthing wrong with the FAQ or have any comments, please mail
  46. me about them. I am always looking for feedback :)
  47.  
  48. | FAQ on on the web
  49. | www.mc68k.demon.co.uk/faq/3dworld-faq.txt
  50.  
  51. | Haage & Partner website
  52. | www.haage-partner.com
  53.  
  54. | Aminet
  55. | www.aminet.org
  56.  
  57.  
  58. >> Formatting >>
  59.  
  60. The FAQ is split into 'parts' and 'sections'. Each part covers one single
  61. broad topic, such as Warp3D or OpenGL, and is referred to by a number. Each
  62. section is then referred to by a letter, and covers a single topic within
  63. each section, such as games or system requirements. Each question within a
  64. section is referred to by a number.
  65.  
  66. When URLs are included in a question/answer, they are repeated at the end
  67. of the question for easy access. This saves you hunting through questions
  68. for some URL or email address. Also, I tend to give the address of entire
  69. web sites, not just particular files. This is a way of paying tribute to
  70. the web site author, and it has the added bonus that you may see something
  71. you like while you are there :)
  72.  
  73.  
  74.  
  75. == Table Of Contents ======================================================
  76.  
  77.  
  78. 1: General information on the 3DWorld ML
  79.   A. Subscription and maintenance
  80.      1. What is the 3DWorld ML?
  81.      2 How do I join/leave the mailing list?
  82.  
  83.   B. Using the list
  84.      1. Is there anything I need to know about this mailing list?
  85.      2. What is considered on-topic?
  86.      3. What are Threads That Would Not Die (TTWND)?
  87.      4. What is the 3DWorld FTP server?
  88.  
  89. 2: Frequently asked questions on the 3DWorld ML
  90.   A. General 3D Graphics Related Questions
  91.      1. What is an API?
  92.      2. What is a HAL?
  93.  
  94.   B. Warp3D Related Questions
  95.      1. Where can I get the latest version of Warp3D?
  96.      2. What are the system requirements for running Warp3D?
  97.      3. What boards/chipsets does Warp3D support?
  98.      4. What versions of the RTG libraries/flashroms work with board
  99.         xxx?
  100.      5. Will there ever be a software driver for Warp3D?
  101.      6. Why will the Warp3D Voodoo driver use Glide as an interface?
  102.      7. I have Cybergraphics PPC, and Warp3D does not work with it.
  103.      8. I installed/updated Warp3D by hand, and it doesn't work.
  104.      9. When will there be support for 24bit rendering with the Virge?
  105.     10. Where can I find more information on Warp3D?
  106.  
  107.   C. OpenGL Related Questions
  108.      1. What is OpenGL?
  109.      2. What OpenGL implementations are there for the AmigaOS?
  110.      3. How does OpenGL perform on the Amiga?
  111.      4. Why is MESA so slow compared with other OpenGLs?
  112.      5. Is MESA any good for writing/porting games?
  113.      6. How easy is it to port OpenGL based applications?
  114.  
  115.   D. General Questions
  116.      1. Why don't people optimise their programs with PPC assembler?
  117.  
  118.  
  119. 3: Reference lists
  120.   A. Books
  121.      1. General 2D/3D Graphics related
  122.      2. 3D game programming
  123.   B. Net resources
  124.      1. FTP sites
  125.      2. Misc web sites
  126.      3. 3D graphics engines
  127.      4. Misc algorithms
  128.      5. Usenet groups
  129.  
  130.  
  131. == 1: General information on the 3DWorld ML ===============================
  132.  
  133.  
  134.  
  135. -- A. Subscription and maintenance ----------------------------------------
  136.  
  137.  
  138. 1. What is the 3DWorld ML?
  139. --------------------------
  140.  
  141. The 3DWorld Mailing List is for the discussion of 3DWorld related products,
  142. details of which can be found on the Haage & Partner web site at
  143. www.haage-partner.com. It can be joined by anyone with an email account and
  144. is unmoderated. It runs on a Majordomo server. All mails from the list have
  145. [3DWorld] in the subject somewhere.
  146.  
  147. | Haage & Partner web site
  148. | www.haage-partner.com
  149.  
  150.  
  151. 2. How do I join/leave the mailing list?
  152. ----------------------------------------
  153.  
  154. The easiest way is to go to the www.haage-partner.com. From there follow the
  155. link for your preferred language, then look for the '3D World' link.
  156.  
  157. Requests to join the list may be sent to majordomo@haage-partner.com. Put
  158. this in the body of the mail:
  159.  
  160. subscribe 3dworld-list
  161.  
  162. Make sure the 'reply-to' address of your mail is set correctly to the
  163. address where you want to receive mail.
  164.  
  165. To unsubscribe, send:
  166.  
  167. unsubscribe 3dworld-list
  168.  
  169. to the same address.
  170.  
  171. | Haage & Partner web site
  172. | www.haage-partner.com
  173.  
  174. | 3D World ML server
  175. | majordomo@haage-partner.com
  176. | Send commands in mail body
  177.  
  178.  
  179.  
  180. -- B. Using the list ------------------------------------------------------
  181.  
  182.  
  183. 1. Is there anything I need to know about this mailing list?
  184. ------------------------------------------------------------
  185.  
  186. As with most public discussion forums, you should follow standard netiquette.
  187. Briefly:
  188.  
  189. ·Don't post off-topic posts.
  190.  
  191. ·Keep posts as short as possible and to the point.
  192.  
  193. ·Don't quote entire mails when replying to posts, only quote the relevant
  194.  parts. This reduces bandwidth use and makes it easier to read your replies.
  195.  
  196. ·Don't shout (i.e. USE ALL CAPITAL LETTERS) or swear, people will take more
  197.  notice if you calmly state your arguments.
  198.  
  199. ·The list's primary language is English. If you want everyone to listen to you,
  200.  then English is the language to use.
  201.  
  202. ·Never post spam (unsolicited email, usually trying to sell or advertise
  203.  something).
  204.  
  205. ·Do not discuss illegal software. This includes QuakePPC and any stolen
  206.  source code.
  207.  
  208. ·Do not post HTML.
  209.  
  210. ·Do not post binaries (programs, pictures etc).
  211.  
  212. ·Do not let your posts get bigger than about 20-30k, at the very most.
  213.  
  214. ·Do not post about Threads That Would Not Die (see section 1.3).
  215.  
  216. ·Don't just answer something for the sake of argument or to save face. We
  217.  are all wrong sometimes. If your answer does not advance the argument at
  218.  all or simply repeats something already said, don't bother.
  219.  
  220. ·Never take things personally, even if someone personally insults you just
  221.  ignore it. Replying will only lower yourself to their level, and all
  222.  others probably resent them for making the post anyway.
  223.  
  224. ·Use abbreviations to clarify yourself. Use IMHO for opinions and IIRC when
  225.  quoting from memory. This way no one can misunderstand your meaning when
  226.  making posts that may not be entirely factual.
  227.  
  228. ·Don't use excessive emotions. :DDDDDDDDDDD is no better than :) or a
  229.  simple <g>.
  230.  
  231. ·If you are unsure your post is relevant or on-topic, keep it short and to
  232.  the point and only post if really necessary.
  233.  
  234. ·If you change the subject of a post you are replying to significantly,
  235.  remember to change the subject line too.
  236.  
  237. ·Some people are very busy, so don't take it personally if they don't
  238.  answer your posts.
  239.  
  240. ·Don't post religious or political beliefs. There are plenty of newsgroups
  241.  for that.
  242.  
  243. It is a good idea to read the list for a few days or weeks before posting, as
  244. this will give you a good idea of how the list works and what is/is not
  245. acceptable.
  246.  
  247. Above all, remember that the list is there to help people and to have
  248. interesting and friendly discussions on. Always keep that in mind, and even if
  249. people don't agree with you just remember that everyone is entitled to their
  250. opinion. If there was no disagreement or discussion, life would be very
  251. boring!
  252.  
  253.  
  254. 2. What is considered on-topic?
  255. -------------------------------
  256.  
  257. The 3DWorld ML is for discussion of all topics related to 3D World
  258. products. At the current time, this includes Warp3D and StormMESA.
  259. Discussion of OpenGL, Rave3D, Glide and other HALs/APIs, the Virge,
  260. Permedia2, Voodoo and other 3D chipsets, 3D applications and games (from a
  261. technical point of view) and announcements of Amiga based 3D programs all
  262. are considered on-topic. Links to 3D graphics related web sites, books and
  263. source code are also welcome, although please don't post source or HTML to
  264. the list itself.
  265.  
  266. However, there are a few topics that should not be discussed. See the next
  267. section (1.3) for more information.
  268.  
  269.  
  270. 3. What are Threads That Would Not Die?
  271. ----------------------------------------
  272.  
  273. Threads That Would Not Die (TTWND) are topics that have come up over and over
  274. again. TTWND have been discussed so much that every possible argument has been
  275. heard, and now no-one is interested. Please don't post about these topics. Any
  276. TTWND that were on-topic at the time are probably answered in this FAQ anyway,
  277. so there should be no need to ask. Here is list of TTWND so far:
  278.  
  279. ·Quake for Warp3D
  280.  - When the sources are released (maybe in early 2000) people will make a
  281.    port.
  282.  
  283. ·QuakePPC
  284.  - It's illegal, so don't ask, not even for benchmarks.
  285.  
  286. ·8x86 vs. 680x0 vs. Dec Alpha vs. PPC etc
  287.  - It's all pointless, as different architectures give different
  288.    performance gains/losses. For instance, PPC on Amiga and PPC on the Mac
  289.    will differ in performance depending on the task, the version of the OS,
  290.    the model of machine used and many other factors. Also, all that matters
  291.    is performance on Amiga systems, comparisons with other systems are
  292.    irrelevant.
  293.  
  294. ·Zorro III vs. PCI vs. ISA vs. AGP
  295.  
  296. ·Amiga vs. IBM PC vs. Playstation vs. N64 etc
  297.  
  298. ·Walking through walls in the Warp3D 'Engine' demo crashes the machine
  299.  - It's just a demo. The source is available, and if you feel strongly
  300.    about it you can fix it yourself. The author has no intention to do so.
  301.  
  302. ·The Warp3D Voodoo driver should not use Glide
  303.  - Answer in the FAQ
  304.  
  305. ·Will there be a software driver for Warp3D?
  306.  - Answer in the FAQ
  307.  
  308. ·Frames Per Second (FPS) benchmarks for program x.
  309.  - FPS is mostly irrelevant. Program usability is more important,
  310.    regardless of what the frame rate is.
  311.  
  312.  
  313. 4. What is the 3DWorld FTP server?
  314. ----------------------------------
  315.  
  316. It is a private server for files related to Warp3D. See the Haage & Parnter
  317. web site for more information and details on uploading software.
  318.  
  319. | 3DWorld FTP Site
  320. | ftp.haage-partner.com/3dworld/
  321.  
  322. | Haage-Partner Web Site
  323. | www.haage-partner.com
  324.  
  325.  
  326.  
  327. == 2: Frequently asked questions on the 3DWorld ML ========================
  328.  
  329.  
  330.  
  331. -- A. General 3D Graphics Related Questions -------------------------------
  332.  
  333.  
  334. 1. What is an API?
  335. ------------------
  336.  
  337. API stands for Application Programmers Interface, and as its name suggests,
  338. is simply way for applications to interface with other programs or
  339. libraries. An example of an API is the Amiga's own intuition.library. The
  340. ARexx ports of many programs could also be considered APIs for ARexx
  341. programming. An API for a specific type of hardware is called a HAL. APIs
  342. tend to exist on more than one platform, so programs can be ported from one
  343. platform to another without too much hassle. For example, porting OpenGL
  344. programs to Amiga is quite easy, as Mesa duplicates almost all of the
  345. OpenGL API.
  346.  
  347.  
  348. 2. What is a HAL?
  349. ------------------
  350.  
  351. HAL stands for Hardware Abstraction Layer, and is an API for hardware. A
  352. HAL provides a common API for accessing the low-level functions of
  353. different pieces of hardware of a specific type. For instance: Glide is a
  354. HAL that lets applications access the Voodoo chipset on various graphics
  355. cards. HALs tend to be more hardware specific than software APIs, so
  356. porting from one hardware platform to another is not always so easy as
  357. using a higher level API, as equivalent HALs may not exist. For example,
  358. porting Direct3D programs to Amiga currently means converting all the
  359. Direct3D calls to their Warp3D equivalent.
  360.  
  361.  
  362. -- B. Warp3D Related Questions --------------------------------------------
  363.  
  364.  
  365. 1. Whare can I get the latest version of Warp3D?
  366. ------------------------------------------------
  367.  
  368. Try the Haage & Partner web page (www.haage-partner.com) or Aminet.
  369.  
  370. | Haage & Partner web site
  371. | www.haage-partner.com
  372.  
  373.  
  374. 2. What are the system requirements for running Warp3D?
  375. -------------------------------------------------------
  376.  
  377. 3D Graphics Card (see next section, 2.2.3)
  378. 68020 or better
  379. FPU (Floating Point Unit)
  380. Hard Drive
  381. Workbench 3.0/3.1
  382. Picasso96 V1.41 or better / Cybergraphics V3/V4 or better
  383. 8mb or more memory recommended
  384.  
  385. Beware of EC CPUs, they don't have an FPU. Really, you need at least on 040
  386. to get anything worth while out of Warp3D. Lots of RAM is also helpful.
  387.  
  388.  
  389. 3. What boards/chipsets does Warp3D support?
  390. --------------------------------------------
  391.  
  392. Here is a complete list as of 21/06/99:
  393.  
  394. Board                   Chipset
  395. ------------------------------------
  396. CyberVision64 3D        Virge
  397. CyberVisionPPC          Permedia 2
  398. BlizzardVision PPC      Permedia 2
  399.  
  400.  
  401. The following boards/chipsets will be supported in coming versions:
  402.  
  403. Board                   Chipset
  404. ------------------------------------
  405. PIV 3D Add-on           Voodoo I
  406.  
  407.  
  408. 4. What versions of the RTG libraries/flashroms work with board xxx?
  409. --------------------------------------------------------------------
  410.  
  411. Thomas Frieden has provided the definitive list of libraries and flashroms
  412. that work with Warp3D. Newer or older versions may (should) work, but these
  413. are the definitive ones:
  414.  
  415. -- Permidia 2 and Cybergraphics V3
  416.    Library:  cgxsystem.library 41.21beta1
  417.    FlashROM: CVisionPPC 2.7 beta 3
  418.  
  419. -- Permidia 2 and Cybergraphics V4
  420.    Library:  cgxsystem.library 42.0
  421.    FlashROM: 4.0 beta 4 (both BVisionPPC and CVisionPPC)
  422.  
  423. -- Virge and Cybergraphics V3/V4
  424.    Library:  Generally, every version after 41
  425.  
  426. -- Virge and Picasso96
  427.    Library:  Picasso96 v1.41 or later
  428.  
  429. Many thanks to Thomas Frieden for that information.
  430.  
  431.  
  432. 5. Will there ever be a software driver for Warp3D?
  433. ---------------------------------------------------
  434.  
  435. The definitive answer here is 'maybe' :). The situation is this: The
  436. documents needed to create a software driver are available to anyone who
  437. wants them. Basically, anyone is allowed to write one if they just ask the
  438. Warp3D developers for the driver development kit. However, no one has so
  439. far said that they will definitely produce a driver, although a few people
  440. have said they will look into it.
  441.  
  442. Discussion of it at the moment is fairly pointless, as until a working
  443. driver is available no one can say what it will be capable of. However, it
  444. is likely to be developer only (i.e. it's so slow it's no good for games,
  445. only for developers wanting to test output to ensure good compatibility or
  446. to develop without 3D hardware).
  447.  
  448. Rest assured, any updates on this situation will appear here and on the 3D
  449. World ML.
  450.  
  451.  
  452. 6. Why will the Warp3D Voodoo driver use Glide as an interface?
  453. ---------------------------------------------------------------
  454.  
  455. For those who have not heard this argument, it goes something like this. The
  456. Voodoo add-on module from Village Tronic (www.villagetronic.com/amiga/) used
  457. the Voodoo chipset produced by 3DFx (www.3dfx.com). As 3DFx only allows
  458. access to the Voodoo chipset via its own Glide interface, Warp3D must use
  459. Glide for its Voodoo driver.
  460.  
  461. Some people are concerned about the speed penalties this may have on the
  462. driver, as two interfaces are used (Warp3D and then Glide). The debate over how
  463. much this will affect performance has been done to death, and it seems only
  464. time will really tell. However, this has become a TTWND and is in fact a
  465. totally pointless argument, as it would be illegal for Warp3D not to use Glide.
  466. 3DFx have never given any other API or HAL access to the hardware, so there is
  467. no point discussing it anymore.
  468.  
  469. | 3DFx - Voodoo and Glide producers
  470. | www.3dfx.com
  471.  
  472.  
  473. 7. I have Cybergraphics PPC, and Warp3D does not work with it.
  474. --------------------------------------------------------------
  475.  
  476. This is a known problem. The solution is not to use CGX PPC, but instead
  477. the 68K version of Picasso96. CGX PPC doesn't actually contain any PPC
  478. code, so there is little benefit in using it. If you really want it you
  479. could use a dual boot system (one for PPC, the other for 68K).
  480.  
  481.  
  482. 8. I installed/updated Warp3D by hand, and it doesn't work.
  483. -----------------------------------------------------------
  484.  
  485. You MUST install Warp3D with the installer script provided. It will not
  486. work any other way. Undo what you did and use the installer script.
  487.  
  488.  
  489. 9. When will there be support for 24bit rendering with the Virge?
  490. -----------------------------------------------------------------
  491.  
  492. 24bit rendering will never be supported for the Virge as the authors of
  493. Warp3D have stated. The reason is that the Virge 24 bit modes use strange
  494. timing, and the authors cannot support. Please don't ask.
  495.  
  496.  
  497. 10. Where can I find more information on Warp3D?
  498. -----------------------------------------------
  499.  
  500. The Haage & Partner (www.haage-partner.com) web page is a good place to
  501. start. The various Amiga graphics and programming related newsgroups are
  502. also a good place for information.
  503.  
  504. | Haage & Partner web site
  505. | www.haage-partner.com
  506.  
  507. | Amiga newsgroups
  508. | comp.sys.amiga.programmer
  509. | comp.sys.amiga.graphics
  510.  
  511.  
  512.  
  513. -- C. OpenGL Related Questions --------------------------------------------
  514.  
  515.  
  516. 1. What is OpenGL?
  517. ------------------
  518.  
  519. OpenGL is a 3D graphics API for high level graphics functions. It differs
  520. from Warp3D in that it doesn't just draw polygons, it can be instructed to
  521. draw 'primitives' (basic shapes) and more complex ones like cubes with
  522. single calls to the API. It can also do transformations and various
  523. shading/lighting functions.
  524.  
  525. OpenGL, as it's name implies, is an open standard. Anyone can develop an
  526. OpenGL implementation at no cost, and if they wish sell it.
  527.  
  528.  
  529. 2. What OpenGL implementations are there for the AmigaOS?
  530. ---------------------------------------------------------
  531.  
  532. There are several available. The first is MESA, a direct port of MESA for
  533. Unix. Next up is StormMESA, again based on MESA but slightly more
  534. integrated with the AmigaOS and StormC.
  535.  
  536. AmigaMesaRTL is another Amiga OpenGL implimentation, but is software
  537. only. Finally there is CyberGL, distributed with Phase 5 PPC cards.
  538.  
  539. MESA and StormMESA use Warp3D for hardware acceleration, if available.
  540. Otherwise, software rendering is available.
  541.  
  542. | StormMESA availability
  543. | Haage & Partner web site
  544. | www.haage-partner.com
  545.  
  546. | MESA availability
  547. | Aminet
  548. | www.aminet.org
  549.  
  550.  
  551. 3. How does OpenGL perform on the Amiga?
  552. ----------------------------------------
  553.  
  554. This depends on the implementation. MESA (and StormMESA) is quite slow
  555. compared with some OpenGL standards. Without hardware acceleration MESA
  556. will really struggle on anything but the simplest applications.
  557.  
  558. For real performance from MESA, a fast PPC and hardware acceleration
  559. (preferably a Permedia 2) is required. Even then, don't expect the
  560. performance given by x86 OpenGL implementations.
  561.  
  562.  
  563. 4. Why is MESA so slow compared with other OpenGLs?
  564. ---------------------------------------------------
  565.  
  566. The simple answer is that MESA is free and open source. While the OpenGL
  567. standard is free and open, implementations don't have to be. The
  568. implementations on other platforms (SGI and x86 machines for instance) have
  569. been developed by full time employees of large companies. They have been
  570. heavily optimised. MESA was developed by hobbyist programmers and is
  571. nowhere near as optimised since this would require more time than the
  572. authors have.
  573.  
  574. Having said that, ID software have chosen MESA for the Linux version of
  575. Quake 3. MESA is therefore not that bad, but don't forget this is running
  576. on a very powerful x86 system with 3D hardware acceleration. The Amiga
  577. version can't yet benefit from this, although PPC is going some way to
  578. making up lost ground.
  579.  
  580. There is the possibility of a 'MiniGL' being made on the Amiga. This is
  581. basically a cut down version of the full OpenGL, designed for speed rather
  582. than completeness. Further information will be posted to the mailing list
  583. when it is available.
  584.  
  585.  
  586. 5. Is MESA any good for writing/porting games?
  587. ----------------------------------------------
  588.  
  589. This depends on the game. On fast machines some games are very playable.
  590. However, very complex games will not run well on Amiga MESA ports. Also,
  591. there are some issues with MESA's compatibility with other 3D
  592. hardware platforms. Generally, most games will be unplayable without 3D
  593. hardware acceleration, and as the current chips don't support, for
  594. instance, all blending modes that some games use, modifications would have
  595. to be made and a simple recompile would not be enough.
  596.  
  597. Then again, ID prove that MESA is a viable platform if given the right
  598. hardware specs as they are using it for Quake 3 for Linux.
  599.  
  600.  
  601. 6. How easy is it to port OpenGL based applications?
  602. ----------------------------------------------------
  603.  
  604. This all depends on the game. If it uses MESA, it should be a bit simpler.
  605. For some apps it is a simple matter of recompiling the source, for others
  606. it requires a lot of modification. OpenGL experience helps a lot.
  607.  
  608.  
  609. -- D. General Questions ---------------------------------------------------
  610.  
  611.  
  612. 1. Why don't people optimise their programs with PPC assembler?
  613. ---------------------------------------------------------------
  614.  
  615. PPC works by having lots of registers (fast storage locations) and few
  616. instructions. This combination makes it very hard for a human to beat a
  617. compiler when optimising any code greater than maybe a screen full of text.
  618. The code produced by PPC compilers is 99% of the time better than the human
  619. could manage.
  620.  
  621. Having said that, there is a definite advantage to using assembler for
  622. small parts of speed-critical applications that are used often by the
  623. application. This is usually the innermost loops and maths routines of 3D
  624. applications. It is only sensible to do this once code has been finalised
  625. in C, as trying to keep assembler and C versions up to date (needed for
  626. dual 68K and PPC projects) is very difficult.
  627.  
  628. Recently, a 68K assembler to PPC assembler converter has been released. It
  629. is available on Aminet in the PPC680x0.lha archive in dev/misc. It is very
  630. new and as how it will affect things is still to be seen.
  631.  
  632.  
  633.  
  634. == 3: Reference lists =====================================================
  635.  
  636.  
  637.  
  638. -- A. Books ---------------------------------------------------------------
  639.  
  640.  
  641. 1. General 2D/3D Graphics related
  642.  
  643. · Computer Graphics: Principles and Practice
  644.   James D. Foley, Andries van Dam, Steven K. Feiner, John F. Hughes
  645.   ISBN 0-201-84840-6
  646.  
  647.   2D/3D Computer graphics bible
  648.  
  649.   * Two version, one in C and one in Pascal.
  650.  
  651.  
  652. · 3D Computer Graphics
  653.   Watt
  654.   Addison-Wesley
  655.  
  656.   Alternative to above book
  657.  
  658.   * Pascal source examples
  659.  
  660.  
  661. · Advanced Animation and Rendering Techniques
  662.   Watt, Watt
  663.  
  664.  
  665. 2. 3D game programming
  666.  
  667. · The Black Art Of 3D Games Programming
  668.   André LaMothe
  669.   The Waite Group
  670.   ISBN 1-57169-004-2
  671.  
  672.  
  673. -- B. Net Resources -------------------------------------------------------
  674.  
  675.  
  676. 1. FTP sites
  677.  
  678. · ftp.uu.net:pub/graphics/
  679.   Misc graphics related
  680.  
  681.  
  682. 2. Misc Web sites
  683.  
  684. · http://members.xoom.com/silicon
  685.   Nurbs + more
  686.  
  687. · http://www.flipcode.com/
  688.   Nurbs + more
  689.  
  690. · http://www.funet.fi/~pora/
  691.   Nurbs + more
  692.  
  693.  
  694. 3. 3D Graphics Engines
  695.  
  696. · http://www.genesis3d.com/
  697.   Genesis3D
  698.   Open source
  699.  
  700. · http://www.ii.uib.no/~alexey/
  701.   Poly Engine
  702.   Uses Quake 2 data files
  703.   Open source
  704.  
  705.  
  706. 4. Misc Algorithms
  707.  
  708. · Library of Efficient Data structures and Algorithms (LEDA)
  709.   Available from Aminet
  710.  
  711.  
  712. 5. Usenet groups
  713.  
  714. · comp.graphics.algorithms
  715.  
  716. · comp.graphics.animation
  717.  
  718. · comp.graphics.api.opengl
  719.  
  720. · comp.graphics.apps.lightwave
  721.  
  722. · comp.graphics.misc
  723.  
  724. · comp.graphics.rendering.misc
  725.  
  726. · comp.graphics.rendering.raytracing
  727.  
  728. · comp.sys.amiga.graphics
  729.  
  730. · comp.sys.amiga.programmer
  731.  
  732. · 3dfx.glide
  733.  
  734. · 3dfx.glide.linux
  735.  
  736. · comp.games.development.programming.algorithms
  737.  
  738.  
  739. -- End Of FAQ --
  740.